abstract class Doing {
  factory Doing._() => null;
  void eat ();
  void sale ();
}

abstract class Cat {
  int findLength (a, b) => 2;
}

abstract class Walker{
  // This class is intended to be used as a mixin, and should not be
  // extended directly.
  factory Walker._() => null;

  void walk() {
    print("I'm walking");
  }

  void other ();
}

class DeadCat extends Cat with Walker implements Doing {
  @override
  void eat() {
    // TODO: implement eat
  }

  @override
  void other() {
    // TODO: implement other
  }

  @override
  void sale() {
    // TODO: implement sale
  }

}

class LiveCat extends Cat {
  LiveCat() {
    print('xxxxxx LiveCat xxxxx');
  }
}

runMinxin () {
  var schrodingers = new LiveCat();

}
